home *** CD-ROM | disk | FTP | other *** search
/ Aminet 28 / Aminet 28 (1998)(GTI - Schatztruhe)[!][Dec 1998].iso / Aminet / dev / misc / gms_dev.lha / GMSDev / Source / C / Misc / Files.c < prev    next >
Encoding:
C/C++ Source or Header  |  1998-07-05  |  1.9 KB  |  72 lines

  1. /* Dice: dcc -l0 -mD dpk.o tags.o Files.c -o Files
  2. **
  3. ** Run this demo with the IceBreaker debug program and observe the output.
  4. */
  5.  
  6. #include <proto/dpkernel.h>
  7. #include <misc/time.h>
  8. #include <system/debug.h>
  9.  
  10. extern APTR FILBase;
  11.  
  12. BYTE *ProgName      = "Files";
  13. BYTE *ProgAuthor    = "Paul Manias";
  14. BYTE *ProgDate      = "March 1998";
  15. BYTE *ProgCopyright = "DreamWorld Productions (c) 1996-1998.  Freely distributable.";
  16. BYTE *ProgShort     = "File demo.";
  17.  
  18. void main(void)
  19. {
  20.   struct Directory *dir = NULL;
  21.   struct FileName  loc  = { ID_FILENAME, "GMS:System/" };
  22.   struct Directory *tdir;
  23.   struct File      *tfile;
  24.   struct Time      *date;
  25.   BYTE *comment;
  26.  
  27.    if (dir = InitTags(NULL,
  28.        TAGS_DIRECTORY, NULL,
  29.        DIRA_Source,     &loc,
  30.        TAGEND)) {
  31.  
  32.       if (Activate(dir) IS ERR_OK) {
  33.          DPrintF("Demo:","Directory activated, now printing dir/file list.");
  34.  
  35.          /* SetFComment(dir,"Testing SetFComment() in GMS."); */
  36.  
  37.          tdir = dir->ChildDir;
  38.          while (tdir) {
  39.  
  40.             if (date = GetFDate(tdir)) {
  41.                DPrintF("Demo:","Dir:  %s  Date: %d/%d/%d", tdir->Source->Name, date->Day, date->Month, date->Year);
  42.             }
  43.  
  44.             tdir = tdir->Next;
  45.          }
  46.  
  47.          tfile = dir->ChildFile;
  48.  
  49.          while (tfile) {
  50.  
  51.             if (date = GetFDate(tfile)) {
  52.                DPrintF("Demo:","File: %s Date: %d/%d/%d", ((struct FileName *)tfile->Source)->Name, date->Day, date->Month, date->Year);
  53.             }
  54.  
  55.             if (comment = GetFComment(tfile)) {
  56.                DPrintF("Demo:","Comment: %s  Permission Flags: $%x", comment, GetFPermissions(tfile));
  57.             }
  58.             else {
  59.                DPrintF("Demo:","Permission Flags: $%x", GetFPermissions(tfile));
  60.             }
  61.  
  62.             tfile = tfile->Next;
  63.          }
  64.       }
  65.       else EMsg("Sorry, could not successfully activate the directory.");
  66.    }
  67.    else EMsg("Could not initialise directory object.");
  68.  
  69.    Free(dir);
  70. }
  71.  
  72.